package com.varian.log.model;

import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @author ben
 * @since 2024/7/22
 */
@Data
public class ApiLogger implements Serializable {
    /**
     * traceId
     */
    protected String traceId;
    /**
     * 服务名称
     */
    private String serverName;
    /**
     * 服务主机
     */
    private String serverHost;
    /**
     * 服务IP
     */
    private String serverIp;
    /**
     * 用户代理
     */
    private String userAgent;
    /**
     * 用户ip
     */
    private String userIp;
    /**
     * 请求方式
     */
    private String requestMethod;
    /**
     * 请求地址
     */
    private String requestUrl;
    /**
     * 请求位置
     */
    private String requestLocal;
    /**
     * 请求承载数据
     */
    private String requestPayload;
    /**
     * 创建人
     */
    private Long createId;
    /**
     * 日志时间
     */
    private LocalDateTime createTime;
    /**
     * 耗时
     */
    private Long costTime;
    /**
     * 响应承载数据
     */
    private String responsePayload;
    /**
     * 响应状态
     */
    private Integer httpStatus;
    /**
     * 异常信息
     */
    private String errorCode;
    /**
     * 异常类
     */
    private String exceptionClass;
    /**
     * 异常信息
     */
    private String exceptionMessage;
    /**
     * 异常定位
     */
    private String exceptionLocal;
    /**
     * 异常堆栈
     */
    private String stackTrace;
}
